package problema038;

import java.util.HashSet;
import java.util.Set;

public class PandigitalMultiples {
	
	static int mejor = 0;
	static Set<Integer> act = new HashSet<Integer>();
	
	public static void main(String[] args){
		panMasGrande();
	}
	
	public static void panMasGrande(){
		//si o si empieza con 9 por el ejemplo. no es 9x o 9xx porque no dan las cifras
		for(int i = 9000; i < 10000; i++){
			act.clear();
			if(pasar(i) && pasar(i*2)){
				if(esPan()){
					mejor = i;
				}
			}
		}		
		int mejor2 = mejor*2;
		System.out.println(mejor + " " + mejor2);
	}
	
	public static boolean esPan(){
		if(act.contains(0)) return false;
		for(int i = 1; i < 10; i++){
			if(!act.contains(i))return false;
		}
		return true;
	}
	
	public static boolean pasar(int i){
		while(i > 0){
			if(act.contains(i%10))return false;
			act.add(i%10);
			i = i / 10;
		}
		return true;
	}
}
